home *** CD-ROM | disk | FTP | other *** search
/ Assassins - Ultimate CD Games Collection 4 / Assassins 4 (1999)(Weird Science).iso / misc / omega / source / tools / crypt.c next >
C/C++ Source or Header  |  1997-05-02  |  713b  |  34 lines

  1. #include <stdio.h>
  2.  
  3. char cryptkey(fname)
  4. char *fname;
  5. {
  6.     int pos, key = 0;
  7.  
  8.     if (!strcmp(fname + strlen(fname) - 4, ".txt"))
  9.     return 100;
  10.     else if (!strncmp(fname, "maze", 4))
  11.     fname = "mazes";
  12.     else if (!strncmp(fname, "villag", 6))
  13.     fname = "village.dat";
  14.     for (pos = 0; fname[pos]; pos++)
  15.     key += 3*(fname[pos] - ' ');
  16.     return (key&0xff);
  17. }
  18.  
  19. main(int num_args, char *args[])
  20. {
  21.     char key;
  22.     int c;
  23.  
  24.     if (num_args == 2) {
  25.     key = cryptkey(args[1]);
  26.     while ((c = getchar()) != EOF) {
  27.         putchar(key^c);
  28.         key = c;
  29.     }
  30.     }
  31.     else
  32.     fprintf(stderr, "Usage: %s (key) < (infile) > (outfile)\n where (key) happens to be the name of the file, without any preceding path.\n", args[0]);
  33. }
  34.